The present invention relates to an interface device that allows a user to interface with a computer, and more particularly to a haptic feedback interface device allowing a user to interface with a graphical environment displayed by a computer.
Computer systems are used extensively in many different industries to implement many applications, such as word processing, data management, simulations, games, internet browsing, and other tasks. A computer system typically displays a visual environment to a user on a display screen or other visual output device. Users can interact with the displayed environment to perform functions on the computer, e.g., play a game, operate an application program, experience a simulation, use a computer aided design (CAD) system, etc. Such user interaction can be implemented through the use of a human-computer interface device, such as a joystick, mouse, trackball, steering wheel, knob, stylus and tablet, xe2x80x9cjoypadxe2x80x9d button controller, foot pedal, yoke hand grip, or the like, that is connected to the computer system controlling the displayed environment. The computer updates the environment in response to the user""s manipulation of a manipulatable object (xe2x80x9cmanipulandumxe2x80x9d) such as a joystick handle or mouse, and provides feedback to the user utilizing the display screen.
One visual, graphical environment that is particularly common is a graphical user interface (GUI). Information within GUI""s are presented to users visibly and/or audibly, such as through a video monitor and sound card. Common GUI""s include the Windows(copyright) operating system from Microsoft Corporation and the MacOS operating system from Apple Computer, Inc. These interfaces allows a user to graphically select and manipulate functions of the operating system, of application programs, and of the computer by using an input device, such as a mouse, trackball, joystick, or the like. Other graphical computer environments are similar to GUI""s. For example, graphical xe2x80x9cpagesxe2x80x9d on the World Wide Web of the Internet communication network utilize features similar to that of GUI""s to select and operate particular functions. Some computer aided design system, such as autoCAD also provide graphical presentations to the user. A graphical environment may also comprise a game or simulation environment.
Several types of tasks are typically performed by a user in a graphical environment. A cursor is often used to select graphical objects or manipulate graphical objects, such as resizing or moving the objects. The user must navigate a cursor through the graphical objects in the environment to perform these tasks and to place the cursor in desired locations to perform other tasks. Thus, it is desirable to provide an interface device and method that will provide improved haptic feedback, for example while navigating a graphical environment.
The inventions disclosed herein are directed to enhancing the navigation of a cursor or other controlled displayed object within a graphical environment, particularly in relation to other graphical objects displayed in the environment. Some inventions are related to the velocity or rate of object interaction of the cursor, while others are related to duration of engagement of the cursor with other graphical objects.
More particularly, one aspect of the present inventions provides an interface device capable of communicating with a computer running an application program and generating a graphical environment The interface device includes a user manipulatable object capable of controlling the motion of a cursor displayed in the graphical environment and an actuator for outputting a haptic effect to a user of the interface device. A modulator modulates the magnitude of the haptic effect in relation to a velocity of the cursor, where the magnitude of the haptic effect at a lower cursor velocity is greater than the magnitude of the haptic effect at a higher cursor velocity. A haptic effect can be output for each of multiple graphical objects over which the cursor moves. The magnitude can be modulated based on the cursor velocity using one or more predetermined functions, including linear, step, and adaptive functions.
In another aspect of the present inventions, an interface device is capable of communicating with a computer generating a graphical environment and includes a user manipulatable object capable of controlling the motion of a cursor, an actuator for outputting a haptic effect to a user, and a modulator to modulate the magnitude of the haptic effect in relation to a rate of interaction of the cursor with graphical objects displayed in the graphical environment. The magnitude of the haptic effect at a lower rate of interaction is greater than the magnitude of the haptic effect at a higher rate of interaction. One or more functions can govern the modulation of the magnitude. The modulation can include examining a number of graphical objects encountered by the cursor in a predetermined period of time to determine the rate of interaction; or, the modulation can be based on a time elapsed from the cursor exiting one graphical object and interacting with another graphical object.
In another aspect of the present inventions, a method for adjusting a magnitude of haptic effects associated with graphical objects displayed in a graphical environment provided by a computer includes determining a haptic effect to be output by an actuator to a user of an interface device, where the haptic effect initiated is based on an interaction of a cursor with one of the graphical objects, and where the determining of the haptic effect includes determining a magnitude of the effect; and adjusting the determined magnitude based on a current velocity of the cursor in the graphical environment, the adjusting being performed after the haptic effect is determined.
In another aspect of the present invention, an interface device capable of communicating with a computer running an application program and generating a graphical environment includes a user manipulatable object capable of controlling the motion of a cursor and an actuator for outputting a haptic effect to a user. A modulator modulates the magnitude of the haptic effect based on an amount of time that the cursor engages the graphical object, where the magnitude of the haptic effect is reduced after a predetermined period of time. The modulator can modulate the magnitude based on a time function, where the time function provides a magnitude inversely proportional to an amount of time that has lapsed since the cursor engaged the target.
The present inventions control haptic output of a haptic feedback device to assist the user in navigating a graphical environment such as a GUI, where haptic feedback is provided when it would be helpful to the user and is reduced at other times. The velocity-based, rate of interaction based, and engagement time methods allow the user to coarsely position the cursor and navigate graphical objects without haptic sensations interfering in selection, positioning, and other navigational tasks.
These and other advantages of the present invention will become apparent to those skilled in the art upon a reading of the following specification of the invention and a study of the several figures of the drawing.